Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Kiss31
0 / 0 / 0
Регистрация: 12.10.2012
Сообщений: 25
#1

Тест для класса - C++

29.01.2014, 22:45. Просмотров 342. Ответов 3
Метки нет (Все метки)

Хочу протестировать класс Address.h

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
//Faile Address.h
#ifndef Address_dot_h
#define Address_dot_h 1
class Address
{
public:
//Konstruktor
Address();
//Functions have access to fields
const char*lastname()const{return lastname_;}
void       lastname(const char*);
 
////////////////////////////////////////////////
const char*firstname()const{return firstname_;}
void       firstname(const char*);
////////////////////////////////////////////////
const char*phone()const{return phone_;}
void       phone(const char*);
/////////////////////////////////////////////////
const char*address()const {return address_;}
void       address(const char*);
///////////////////////////////////////////////////
///////////////////////////////////////////////////
private:
//Lenghts of string are numbered;
enum{namelen=16,phonelen=16,addrlen=100};
// Fields of date
char lastname_[namelen];
char firstname_[namelen];
char phone_[phonelen];
char address_[addrlen];
};
#endif//Address_dot_h
Для этого написал в VC програмку

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include "stdafx.h"
#include<iostream>
#include "Address.h"
using namespace std;
void dum(const Address &a)
{
std::cout<<a.firstname()<<''<<a.lastname()<<'\n'
         <<a.address()<<'\n'<<a.phone()<<'\n'
         <<std::endl;
}
  
int main()
{
Address a;
a.lastname("Smith");
a.firstname("Joan");
a.phone("4446674");
a.address("Veri roud");
a.dum;
system("pause");
    
return 0;
}
Но VC ругается такими словами:
Код
1>------ Build started: Project: mama, Configuration: Debug Win32 ------
1>  mama.cpp
1>mama.cpp(9): error C2137: empty character constant
1>mama.cpp(24): error C2039: 'dum' : is not a member of 'Address'[/U][/B]
1>          C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\Address.h(5) : see declaration of 'Address'
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
Как можно исправить это дело???
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.01.2014, 22:45
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Тест для класса (C++):

тест программы (класса)! - C++
здраствуйте! вот задача на построение класса , я её зделал ,а тестик невыходит никак довести до ума, вот набросок: int main(int...

Создать для класса виртуальный метод, возвращающий уникальный идентификатор класса - C++
В курсаче по ООП сказано создать для класса виртуальный метод,возвращающий уникальный идентификатор класса. Вопрос в том, что это такое?

Перегрузка оператора >> для дочернего класса от базового виртуального класса - C++
Доброго вам времени суток! Программирую на С++ не давно, в связи с отсутствием должного времени на поиск ответа в глубинах учебников,...

Реализовать оператор= для присваивания объекта класса-потомка объекту базового класса - C++
Есть два класса A и B, причем класс B является потомком A. Как реализовать следующее: obj_A = obj_B и obj_B = obj_A? Добавлено через 9...

Создать конструктор копий и оператор присваивания для класса компьютер и члена класса марка - C++
Создать конструктор копий и оператор присваивания для класса компьютер и члена класса марка. Всем огромное спасибо за помощь! |

Задачка для новичков #2: вывести в методе класса-родителя значение данных-членов из дочернего класса - C++
Вдохновленный соседней темой тоже решил задать свой вопрос таким же начинающим программистам как и я :) Все кто хочет попробовать дать...

3
zelim
77 / 77 / 4
Регистрация: 26.12.2011
Сообщений: 217
30.01.2014, 00:51 #2
Цитата Сообщение от Kiss31 Посмотреть сообщение
1>mama.cpp(24): error C2039: 'dum' : is not a member of 'Address'[/U][/B]
a.dum; - dum не является членом класса. Правильно будет написать так: dum(a);
0
Лаборант23
0 / 0 / 0
Регистрация: 29.01.2014
Сообщений: 6
30.01.2014, 11:55 #3
Спасибо за помощь но теперь получаеться ошибка

XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
------ Build started: Project: mama, Configuration: Debug Win32 ------
1>  mama.cpp
1>  .NETFramework,Version=v4.0.AssemblyAttributes.cpp
1>mama.obj : error LNK2028: unresolved token (0A000325) "public: void __thiscall Address::address(char const *)" (?address@Address@@$$FQAEXPBD@Z) referenced in function "int __cdecl main(void)" (?main@@$$HYAHXZ)
1>mama.obj : error LNK2028: unresolved token (0A000326) "public: void __thiscall Address::phone(char const *)" (?phone@Address@@$$FQAEXPBD@Z) referenced in function "int __cdecl main(void)" (?main@@$$HYAHXZ)
1>mama.obj : error LNK2028: unresolved token (0A000327) "public: void __thiscall Address::firstname(char const *)" (?firstname@Address@@$$FQAEXPBD@Z) referenced in function "int __cdecl main(void)" (?main@@$$HYAHXZ)
1>mama.obj : error LNK2028: unresolved token (0A000328) "public: void __thiscall Address::lastname(char const *)" (?lastname@Address@@$$FQAEXPBD@Z) referenced in function "int __cdecl main(void)" (?main@@$$HYAHXZ)
1>mama.obj : error LNK2028: unresolved token (0A000329) "public: __thiscall Address::Address(void)" (??0Address@@$$FQAE@XZ) referenced in function "int __cdecl main(void)" (?main@@$$HYAHXZ)
1>mama.obj : error LNK2019: unresolved external symbol "public: void __thiscall Address::address(char const *)" (?address@Address@@$$FQAEXPBD@Z) referenced in function "int __cdecl main(void)" (?main@@$$HYAHXZ)
1>mama.obj : error LNK2019: unresolved external symbol "public: void __thiscall Address::phone(char const *)" (?phone@Address@@$$FQAEXPBD@Z) referenced in function "int __cdecl main(void)" (?main@@$$HYAHXZ)
1>mama.obj : error LNK2019: unresolved external symbol "public: void __thiscall Address::firstname(char const *)" (?firstname@Address@@$$FQAEXPBD@Z) referenced in function "int __cdecl main(void)" (?main@@$$HYAHXZ)
1>mama.obj : error LNK2019: unresolved external symbol "public: void __thiscall Address::lastname(char const *)" (?lastname@Address@@$$FQAEXPBD@Z) referenced in function "int __cdecl main(void)" (?main@@$$HYAHXZ)
1>mama.obj : error LNK2019: unresolved external symbol "public: __thiscall Address::Address(void)" (??0Address@@$$FQAE@XZ) referenced in function "int __cdecl main(void)" (?main@@$$HYAHXZ)
1>C:\Users\Israel\Documents\Visual Studio 2010\Projects\C++\mama\Debug\mama.exe : fatal error LNK1120: 10 unresolved externals
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
Как это можно исправить
0
aLarman
642 / 563 / 89
Регистрация: 13.12.2012
Сообщений: 2,109
30.01.2014, 12:40 #4
Цитата Сообщение от Kiss31 Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
void       lastname(const char*);
 
 
void       firstname(const char*);
 
void       phone(const char*);
 
void       address(const char*);
объявлены но не определены, вот и ошибка

Добавлено через 1 минуту

Не по теме:

Цитата Сообщение от Лаборант23 Посмотреть сообщение
error LNK2019: unresolved external symbol
или нет реализации метода или не подключены либы (если используется в проекте сторонняя либа)
так на будущее

0
30.01.2014, 12:40
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.01.2014, 12:40
Привет! Вот еще темы с ответами:

Использование перегруженного оператора ввода/вывода в поток базового класса для объекта производного класса - C++
Здравствуйте! Можно ли использовать перегруженный оператор ввода/вывода в поток из базового класса для объекта производного класса, если...

При перегрузке оператора для класса не получается использовать имя переменной такое же, как в описании класса - C++
Описал первый класс,затем - описал второй класс, используя первый,и когда начал перезагружать оператор для второго класса, вылезла...

delete внутри класса для самого класса - C++
Доброго времени суток, пишу программу для работы с матрицами. По условию дали лишь несколько библиотек, ни векторов ни cstdio. Для...

Написать функцию для класса, возращающую данный из вектора обьектов класса по итератору вектора - C++
День=добрый как написать функцию для класса возращающую данный из вектора обьектов класса по итератору вектора?? стока запроса: ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru