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

Не работает явное преобразование типа, а неявное работает. - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Системы счисления и вывод результата http://www.cyberforum.ru/cpp-beginners/thread347770.html
Здравствуйте, я получил задание создать программу которая принимает значение в 10-тичной системе и выводит на экран значение в любой выбранной системе от 2 до 36. #include<iostream> using namespace std; void st(int dig,int sys); void main() { int dig,sys=0; cout<<"Enter a digit:\t"; cin>>dig; cout<<"Enter a system(2-36):\t";
C++ Размер массива Нужно создать массив для хранения различных символов (буквы и различные знаки) Необходимо узнать его размер. Как это сделать? В массиве хранятся // символы поодиночке char *a = new char ; http://www.cyberforum.ru/cpp-beginners/thread347758.html
C++ Стандартный класс complex.
1)Есть ли стандартный не шаблонный класс complex? Я нашел только шаблонный класс, определенный в заголовочном файле <complex> Есть ли нет не шаблонного класса complex, нельзя ли объявить объект complex без указаний типа? Судя по этому( в самом низу страницу ) http://msdn.microsoft.com/en-us/library/7a40a0e3(VS.80).aspx , вроде бы можно( я англ. плохо знаю ), а компилятор Visual Studio не...
C++ Помогите настроить CodeBlocks...
Скачал CodeBlocks 10,5 ,при установки поставил везде галочки .Потом решил проверить работоспособность:Создал консольное приложение,выбрал язык с++,компилятор не стал менять,затем вылетела ошибка:"This wizard doesn't know to setup exception flags for this compiler" ,нажал Ок ,там уже была вбита программа "Hello World" : #include <iostream> using namespace std; int main() { cout <<...
C++ sizeof и количество элементов в массиве http://www.cyberforum.ru/cpp-beginners/thread347735.html
Доброе время суток. Подскажите пожалуйста почему sizeof не возвоащает кол.элементов в массиве. #include <iostream> int main() { using namespace std; short int symbols = {34,6,4,6,3,43,2,55,12,432,54,34,543,234,432}; int a;
C++ Запись в двумерный вектор Есть файл input.txt со следующим содержимым: 0 1 0 0 0 1 0 1 1 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 то есть, файл содержит матрицу 5x5. Необходимо записать данную матрицу в двумерный вектор v. Вот как я пытаюсь это сделать: ifstream input("input.txt"); подробнее

Показать сообщение отдельно
Сыроежка
Заблокирован
03.09.2011, 21:00     Не работает явное преобразование типа, а неявное работает.
Цитата Сообщение от Chelioss Посмотреть сообщение
Я сам хочу написать, ибо опыт то получать надо. Да и ваш не подходит потому, что в моем тупом задании комплексный класс совсем по другому себя ведет.

static_cast< Complex > (999) - так можно преобразовать int к Complex, но почему в моем классе это неоднозначность, если у меня перед первым конструктором стоит спецификатор explicit, который запрещает использовать этот конструктор при преобразовании типа?
Да и Complex complex = Complex(999) - это ведь тоже преобразования типа или нет? В любом случае static_cast не работает, хотя есть спецификатор explicit.
static_cast<complex>( 999 ) вызывает конструктор complex( 999 ). Я вам уже сказал, что вам надо выкинуть конструктор, где вы устанавливаете аргументы по умолчанию. Это логически неверно, так как у вас есть конструктор с одним аргументом. Вам скорей всего радо создать конструктор по умолчанию к вашему списку конструкторов, где обе части комплексного числа будут положены равуными 0.
 
Текущее время: 20:32. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru