Я программирую в C++ с помощью Visual Studio. Где бы я ни пытался указать что-то как "char" в моих аргументах, например:
getData(char& mStatus, int& nOfChildren, double& salary, double& contribPension);
Я получаю 2 ошибки. Во-первых, он говорит, что я должен иметь ")" перед char, и что getData() не получает 0 аргументов.
Я попробовал только нулевой аргумент, а не весь свой код (это практика с использованием пространств имен), и он запускается. Однако с этими изменениями он не выводит оператор return из taxAmount() на экран. Так что, может быть, аргументы нужно назвать? Я посмотрел ВЕЗДЕ и понятия не имею, в чем проблема. Это остальная часть основной:
#include "stdafx.h"
#include <iostream>
#include <iomanip>
#include "Heading.h"
using namespace std;
int main()
{
getHeading("Assignment 8");
deductions::getData(char& mStatus, int& nOfChildren, double& salary, double& contribPension);
calculations::taxAmount(char mStatus, int nOfChildren, double salary,
double contribPension);
getClosing();
}
Это не имеет никакого отношения к char
в качестве типа параметра. Вы пытаетесь объявить методы внутри функции и не учитывать возвращаемое значение.
Компилятор считает, что это вызов метода и поэтому отклоняет char
, настаивая на закрывающей круглой скобке )
.
func(1,2)
) с объявлением функции (например,getData(char& mStatus,...)
.