Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.03.2010, 08:56   #1
Дырдин
Пользователь
 
Аватар для Дырдин
 
Регистрация: 26.09.2009
Сообщений: 81
По умолчанию Что-то не так с конструктором

Посмотрите почему выдаёт 4(!) ошибки. Вроде бы всё грамотно написано

Переменные a, b, встречающиеся в конструкторе потом планируется связать по ссылкам в отдельной функции.

Код:
#include <conio.h>
#include <stdio.h>
#include <locale.h>
#include <stdlib.h>
//bool on_screen(float *a, int m, int n);


class Matrix{
private:
	int n,m,elem;
public:
	Matrix(char str,int check = 0);
	float* InputOfElements();
}

//check контролирует взаимосвязь между данной матрицей и самой первой введёной матрицей
Matrix::Matrix(char str, int check)
{
input:	printf("\n%s = ", str);
	scanf("%d %d", &m, &n);	
	int a = 2, b = 2;//временное значение, планируется присваивать значения из др. ф-ий
	switch (check){
		//Если check = 1, должны совпадать оба значения
case 1:
	if(m != a || n != b){
		printf("\nОшибка при вводе значений!!! Должны совпадать обе размерности");
		goto input;
	}
	//Если check = 2, должны совпадать m
case 2:
	if(m != a){
		printf("\nОшибка при вводе значений!!! Длины матриц должны совпадать");
		goto input;
	}
		//Если check = 3, должны совпадать n
case 3:
	if(n != b){
		printf("\nОшибка при вводе значений!!! Высоты матриц должны совпадать");
		goto input;
	}
default:
	break;
	}
	elem = m*n;
}


float* Matrix::InputOfElements();
{
	float *matr = new float [elem];
	printf("\nВведите элементы матрицы:\n");
	for(int i = 0; i < elem; i++){
		scanf("%f",matr[i][j]);
	}
	return matr;
}


int main()
{
	float *d;
	int k;
	setlocale(LC_ALL,"Russian");
	Matrix A('A');
	getch();
}
Всё. Не надо, разобрался

Последний раз редактировалось Дырдин; 25.03.2010 в 09:07.
Дырдин вне форума Ответить с цитированием
Старый 25.03.2010, 09:39   #2
skrudjmagdak
Пользователь
 
Регистрация: 02.12.2009
Сообщений: 33
По умолчанию

А что setlocale(LC_ALL,"Russian"); делает можно узнать?

Последний раз редактировалось skrudjmagdak; 25.03.2010 в 09:42.
skrudjmagdak вне форума Ответить с цитированием
Старый 25.03.2010, 09:40   #3
skrudjmagdak
Пользователь
 
Регистрация: 02.12.2009
Сообщений: 33
По умолчанию

ПОЖАЛУЙСТА, напишите что данная программа должна делать.

Последний раз редактировалось skrudjmagdak; 25.03.2010 в 09:42.
skrudjmagdak вне форума Ответить с цитированием
Старый 25.03.2010, 10:09   #4
skrudjmagdak
Пользователь
 
Регистрация: 02.12.2009
Сообщений: 33
По умолчанию

Нехватает точки с запятой:
class Matrix{
private:
int n,m,elem;
public:
Matrix(char str,int check = 0);
float* InputOfElements();
}; //<---- здесь
skrudjmagdak вне форума Ответить с цитированием
Старый 25.03.2010, 19:02   #5
NiCola999
Не
Участник клуба
 
Регистрация: 29.10.2009
Сообщений: 1,456
По умолчанию

Цитата:
А что setlocale(LC_ALL,"Russian"); делает можно узнать?
делает возможным вывод русских букв в консоль windows
NiCola999 вне форума Ответить с цитированием
Старый 26.03.2010, 17:08   #6
Kaktus_666
Новичок
Джуниор
 
Регистрация: 26.03.2010
Сообщений: 2
По умолчанию

что не так?
// program Hello world!
#include <iostream.h>
main()
{
cout << "Hello World!\n";
return 0;
}
Kaktus_666 вне форума Ответить с цитированием
Старый 26.03.2010, 17:19   #7
Гром
Старожил
 
Аватар для Гром
 
Регистрация: 21.03.2009
Сообщений: 2,193
По умолчанию

1. Вопрос не в своей теме
2. Нет тега CODE
3. Неявный int (int main)
4. Если компилятор мало-мальски новый, поддерживающий стандарт, то старый стиль подключаемых файлов (сейчас - #include <iostream>) и нет std::cout.
Простые и красивые программы - коды программ + учебник C++
Создание игры - взгляд изнутри - сайт проекта
Тема на форуме, посвященная ему же
Гром вне форума Ответить с цитированием
Старый 26.03.2010, 18:33   #8
Kaktus_666
Новичок
Джуниор
 
Регистрация: 26.03.2010
Сообщений: 2
По умолчанию

Цитата:
Сообщение от Гром Посмотреть сообщение
1. Вопрос не в своей теме
2. Нет тега CODE
3. Неявный int (int main)
4. Если компилятор мало-мальски новый, поддерживающий стандарт, то старый стиль подключаемых файлов (сейчас - #include <iostream>) и нет std::cout.
Спасибо.
код переписан из учебника Харви Дейтела,Пола Дейтела "Как программировать на С++" Странно,что есть ошибки.Компилятор - "Dev-C++"
Kaktus_666 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
А что не так??? frargus Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 5 21.03.2010 08:05
Что не так? rododendron Общие вопросы C/C++ 5 05.05.2009 22:48
Что не так? Alexcomeback Общие вопросы C/C++ 9 07.04.2009 23:14
Что не так? Viento Microsoft Office Excel 3 30.01.2009 14:38
Что-то не так Radiofuck Помощь студентам 2 16.01.2007 22:06